/******************************************************************************
    myBoard is a port of MacOS X dashboard application for windows.
    Copyright (C) 2007,2008  by Yann ALET
    Email : yann.alet@gmail.com

    myBoard is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    myBoard is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
****************************************************************************/

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Media.Imaging;

namespace myBoard.App.Portfolio
{
    public enum ProjectStatus
    {
        WorkInProgress,Finished,StandBy
    }

    public class Project
    {
        private string _name;
        private string _description;
        private string _client;
        private List<string> _usedTechnologies;
        private List<string> _urls;
        private BitmapSource _thumbSnapshot;
        private BitmapSource _fullSnapshot;
        private ProjectStatus _status;
        private DateTime _date;

        #region Properties

        public string Name
        {
            get { return _name; }
        }

        public string Description
        {
            get { return _description; }
        }

        public string Client
        {
            get { return _client; }
            set { _client = value; }
        }       

        public List<string> UsedTechnologies
        {
            get { return _usedTechnologies; }
            set { _usedTechnologies = value; }
        }        

        public List<string> Urls
        {
            get { return _urls; }
            set { _urls = value; }
        }        

        public BitmapSource ThumbSnapshot
        {
            get { return _thumbSnapshot; }
        }       

        public BitmapSource FullSnapshot
        {
            get { return _fullSnapshot; }
        }        

        public ProjectStatus Status
        {
            get { return _status; }
        }

        public DateTime Date
        {
            get { return _date; }
        }

        #endregion

        public Project(string name, string desc, string client, List<string> technologies, List<string> urls,
            BitmapSource thumbSnapshot, BitmapSource fullSnapshot, ProjectStatus status, DateTime date)
        {
            _name = name;
            _description = desc;
            _client = client;
            _usedTechnologies = technologies;
            _urls = urls;
            _thumbSnapshot = thumbSnapshot;
            _fullSnapshot = fullSnapshot;
            _status = status;
            _date = date;
        }

    }
}
